package com.gwcloud.leetcode.tags.bfs;

import java.util.LinkedList;
import java.util.Queue;

import com.gwcloud.leetcode.common.datastructure.Node0559;

/** 
* @ClassName   : Leetcode0559 
* @author      : ganwei 
* @date        : 2020年6月14日 
* @Description : N叉树的最大深度 
*/
public class Leetcode0559 {
	/**
	 * -解题思路，广度优先遍历
	 */
    public int maxDepth(Node0559 root) {
        if(root == null) {
        	return 0;
        }
    	Queue<Node0559> q = new LinkedList<Node0559>();
        q.offer(root);
        int level = 0;
        
        while(!q.isEmpty()) {
        	int len = q.size();
        	
        	for(int i = 0; i < len; i++) {
        		Node0559 node = q.poll();
        		for(Node0559 n : node.children) {
        			q.offer(n);
        		}
        	}
        	level++;
        }
    	return level;
    	
    }
    
    public static void main(String[] args) {
    	
    }
}
